# app/parser/items.py

import scrapy


class UniversityItem(scrapy.Item):
    """
    定义高校信息的数据“容器”。
    它的字段精确对应 `universities` 表的列，作为爬虫和数据管道之间的“契约”。
    """

    # === 业务数据字段 ===
    # 这些是最终需要存入 `universities` 表的核心信息
    name = scrapy.Field()
    location = scrapy.Field()
    administration = scrapy.Field()
    category = scrapy.Field()
    tags = scrapy.Field()

    # === 唯一标识与元数据字段 ===
    detail_url = scrapy.Field()
    content_hash = scrapy.Field()

    # === 临时传递字段 ===
    # 这个字段用于从爬虫向管道传递“原材料”
    # 管道会用它来计算hash值，并将其存入 raw_pages 表
    raw_content = scrapy.Field()
